home *** CD-ROM | disk | FTP | other *** search
/ Aminet 8 / Aminet 8 (1995)(GTI - Schatztruhe)[!][Oct 1995].iso / Aminet / dev / lang / smalltlk.lha / Smalltalk3.09 / src / makefile < prev    next >
Makefile  |  1995-08-26  |  4KB  |  111 lines

  1. CC = gcc
  2. #CFLAGS = -O -noixemul
  3.  
  4. # define groups of files, to make later commands easier
  5. INTERPc = memory.c names.c news.c interp.c
  6. INTERPo = memory.o names.o news.o interp.o
  7. PRIMITIVEc = primitive.c filein.c lex.c parser.c unixio.c
  8. PRIMITIVEo = primitive.o filein.o lex.o parser.o unixio.o
  9. basicST = basic.st mag.st collect.st 
  10. unixST = file.st mult.st 
  11. testST = test.st queen.st
  12. CFILES = *.h $(INTERPc) $(PRIMITIVEc) st.c initial.c tty.c muiprim.c muiinit.c
  13. OFILES = $(INTERPo) $(PRIMITIVEo) 
  14. STFILES = $(basicST) $(unixST) $(testST) tty.st graphics.st muiwin.st
  15. FILES = README Makefile vms.com $(CFILES) $(STFILES) *.ms
  16. # the following are used only by turboc on the ibm pc
  17. TURBOc=memory names news interp primitive filein lex parser unixio tty
  18. TINCLUDE=c:\turboc\include
  19. TLIB=c:\turboc\lib
  20. # INTERFACE=
  21.  
  22. # the following is for those poor souls who say ``make'' without looking
  23. help:
  24.     @echo "select one of the following to make"
  25.     @echo "bsdtty: Berkeley 4.2/4.3 with teletype interface "
  26.     @echo "sysvtty: System V with teletype interface "
  27.     @echo "bsdx11: Berkeley 4.2/4.3 with stdwin interface on top of X11"
  28.     @echo "ibmturboc: IBM PC with Turbo C compiler (see install.ms)"
  29.     @echo "amigagcc: Amiga with GNU C compiler"
  30.     @echo "amigamui: Amiga GNU C with MUI interface"
  31.  
  32. winfiles: $(OFILES) muiprim.o muiinit.o initial.o st.o
  33.  
  34. # initial - the initial object maker
  35. initial: $(INTERPo) $(PRIMITIVEo) initial.o $(INTERFACE)
  36.     $(CC) $(CFLAGS) -o initial $(INTERPo) $(PRIMITIVEo) initial.o $(INTERFACE) -lm $(LIBS)
  37.  
  38. # st - the actual bytecode interpreter
  39. st: $(INTERPo) $(PRIMITIVEo) st.o $(INTERFACE)
  40.     $(CC) $(CFLAGS) -o st $(INTERPo) $(PRIMITIVEo) st.o $(INTERFACE) -lm $(LIBS)
  41.  
  42. # bsdtty - berkeley 4.2/4.3 with tty style interface
  43. bsdtty:
  44.     make "CFLAGS=$(CFLAGS) -DB42" "LIBS=" "INTERFACE= tty.o" initial st
  45.     initial $(basicST) $(unixST) tty.st
  46.  
  47. bsdtty.lint:
  48.     lint -DB42 $(INTERPc) $(PRIMITIVEc) tty.c initial.c -lm
  49.     lint -DB42 $(INTERPc) $(PRIMITIVEc) tty.c st.c -lm
  50.  
  51. # sysvtty - system V with tty style interface
  52. sysvtty:
  53.     make "CFLAGS=$(CFLAGS) -DSYSV" "LIBS=" "INTERFACE= tty.o" initial st
  54.     initial $(basicST) $(unixST) tty.st
  55.  
  56. sysvtty.lint:
  57.     lint -DSYSV $(INTERPc) $(PRIMITIVEc) tty.c initial.c -lm
  58.     lint -DSYSV $(INTERPc) $(PRIMITIVEc) tty.c st.c -lm
  59.  
  60. # amigagcc - Amiga GNU C with tty style interface
  61. amigagcc:
  62.     make "CFLAGS=$(CFLAGS) -DAMIGA" "LIBS=" "INTERFACE= tty.o" initial st
  63.     initial $(basicST) $(unixST) tty.st
  64.  
  65. # amigamui - Amiga GNU C with MUI interface
  66. amigamui:
  67.     make "CFLAGS=-O -noixemul -DAMIGA -DMUIWIN" "LIBS=" "INTERFACE= muiprim.o muiinit.o" initial st
  68.     initial $(basicST) $(unixST) graphics.st muiwin.st
  69.  
  70. # bsdterm - berkekey 4.2/4.3 with stdwin interface on top of termcap
  71. # requires Guido van Rossum's standard window package
  72. # (currently doesn't work)
  73. bsdterm: stdw.o
  74.     make "CFLAGS=$(CFLAGS) -DB42 -DSTDWIN" "LIBS= -ltermcap" "INTERFACE= winprim.o stdw.o" initial st
  75.     initial $(basicST) $(unixST) graphics.st stdwin.st
  76.  
  77. # bsdx11 - berkekey 4.2/4.3 with stdwin interface on top of x11
  78. # requires Guido van Rossum's standard window package
  79. bsdx11: stdw.o
  80.     make "CFLAGS=$(CFLAGS) -DB42 -DSTDWIN" "LIBS= -lX" "INTERFACE= winprim.o stdw.o" initial st
  81.     initial $(basicST) $(unixST) graphics.st stdwin.st
  82.  
  83. bsdx11.lint:
  84.     lint -DB42 -DSTDWIN $(INTERPc) $(PRIMITIVEc) winprim.c initial.c -lm -lX
  85.     lint -DB42 -DSTDWIN $(INTERPc) $(PRIMITIVEc) winprim.c st.c -lm -lX
  86.  
  87. # all the dependencies on .h files
  88. filein.o : filein.c env.h memory.h names.h lex.h 
  89. initial.o : initial.c env.h memory.h names.h 
  90. interp.o : interp.c env.h memory.h names.h interp.h 
  91. lex.o : lex.c env.h memory.h lex.h 
  92. memory.o : memory.c env.h memory.h 
  93. names.o : names.c env.h memory.h names.h 
  94. news.o : news.c env.h memory.h names.h 
  95. parser.o : parser.c env.h memory.h names.h interp.h lex.h 
  96. primitive.o : primitive.c env.h memory.h names.h 
  97. st.o : st.c env.h memory.h names.h 
  98. tty.o : tty.c env.h memory.h 
  99. unixio.o : unixio.c env.h memory.h names.h 
  100. muiprim.o : muiprim.c muist.h env.h memory.h names.h 
  101. muiinit.o : muiinit.c muist.h env.h memory.h names.h
  102.  
  103. # - pack - pack up the files for mailing
  104. pack: $(FILES)
  105.     packmail $(FILES)
  106.  
  107. # - tar - make a compressed tar file
  108. tar: $(FILES)
  109.     tar cvf small.v3.tar $(FILES)
  110.     compress small.v3.tar
  111.